package main

import (
	"fmt"
	"gin-epg/internal/app/dao"
	"gin-epg/internal/app/routes"
	"gin-epg/internal/app/schedule"
	"gin-epg/internal/app/store"
	_ "github.com/jinzhu/gorm/dialects/mysql"
	"log"
)

func main() {
	// 连接数据库
	err := dao.InitMySql()
	if err != nil {
		panic(err)
	} else {
		fmt.Println("初始化数据库服务成功")
	}
	defer dao.Close()

	// 初始化存储服务
	err = store.InitStoreService()
	if err != nil {
		log.Fatalf("初始化存储服务失败: %v", err)
	} else {
		fmt.Println("初始化存储服务成功")
	}

	// 初始化定时器服务
	defer schedule.Conrs.Stop()

	// 初始化日志服务
	err = dao.InitLogger()
	if err != nil {
		log.Fatalf("初始化日志服务失败: %v", err)
	} else {
		fmt.Println("初始化日志服务成功")
	}

	r := routes.SetRouter()
	r.Run(":8082")
}
